Шаг 6 - Пробуем первую анимацию.

Загрузить проект

Тот овал, который мы создали в прошлом шаге, мы заставим двигаться. Для этого нужен объект трансформации. Этот объект нужно приложить к объекту изображения и получить новый объект изображения, который уже передать элементу управления. Выбирая функцию создания трансформации нужно понимать одну маленькую тонкость. Приставка Rate заставит объект двигаться непрерывно.

Функция трансформации – просто одна трансформация
Функция транформацииRate – непрерывная трансформация.

Вот что у нас получиться. Только в реальной анимации все будет намного плавней.

6_1.gif (7369 b)

HTML&JScript
Visual Basic
Visual C++

HTML&JScript

Создадим объект трансформации, применим к овалу, передадим элементу управления.

<SCRIPT language=JScript>

   mDAStatics = DAControl.PixelLibrary;
   myImg = mDAStatics.SolidColorImage(mDAStatics.Red);
   myOval=mDAStatics.Oval(50,80).Fill(mDAStatics.DefaultLineStyle,myImg);
   myrot = mDAStatics.Rotate2Rate(1.5);
   myfinal = myOval.Transform(myrot);	
   DAControl.Image = myfinal; 
   DAControl.Start();

</SCRIPT>

Visual Basic

Объявим необходимые переменные.

Dim myRot As DATransform2
Dim myFinal As DAImage
Dim mOValImage As DAImage
Dim mDAImage As DAImage
Dim mDAStatics  As DAStatics

Создадим объект трансформации, применим к овалу, передадим элементу управления.

Private Sub Form_Load()
Set mDAStatics = DAViewerControl1.PixelLibrary
Set mDAImage = mDAStatics.SolidColorImage(mDAStatics.Red)
Set mOValImage = mDAStatics.Oval(50, 80).Fill(mDAStatics.DefaultLineStyle, mDAImage)
Set myRot = mDAStatics.Rotate2Rate(1.5)
Set myFinal = mOValImage.Transform(myRot)
DAViewerControl1.Image = myFinal
DAViewerControl1.Start
End Sub

Visual C++

Подключаем описание класса трансформации.

.........
#include "dastatics.h"
#include "daimage.h"
#include "dacolor.h"
#include "dalinestyle.h"
#include "dapath2.h"
#include "datransform2.h"
..........

Объявим необходимые переменные.

class CVCDlg : public CDialog
{
// Construction
public:
	CVCDlg(CWnd* pParent = NULL);	// standard constructor
	CDAStatics mDAStatics;
	CDAImage mCDAImage;
	CDAImage mOvalImage;
	CDAImage mFinalImage;
    	CDATransform2 mTransform;
	CDAColor mCDAColor;
	CDALineStyle mDALineStyle;
	// Dialog Data
	//{{AFX_DATA(CVCDlg)
..............
};

Создадим объект трансформации, применим к овалу, передадим элементу управления.

.......
	
	// TODO: Add extra initialization here
	
	mDAStatics=m_DirectControl.GetPixelLibrary(); 
	mCDAColor = mDAStatics.GetRed();
	mCDAImage=mDAStatics.SolidColorImage(mCDAColor); 
	mDALineStyle = mDAStatics.GetDefaultLineStyle(); 
    	mOvalImage=mDAStatics.Oval(50,80).Fill( mDALineStyle ,mCDAImage);
	mTransform=mDAStatics.Rotate2Rate(1.5);
	mFinalImage=mOvalImage.Transform(mTransform); 
	m_DirectControl.SetImage( mFinalImage);
	m_DirectControl.Start(); 
	return TRUE;  // return TRUE  unless you set the focus to a control
}
Hosted by uCoz